<template>
	<view class="VersionUpdate">
		<view class="app_logo">
			<image src="/static/VersionUpdate/logo.jpg" mode=""></image>
			<text class="name">众赢科技</text>
			<text class="version" v-if="$store.state.version">当前版本 {{$store.state.version}}</text>
			<text class="version small" v-if="version.newversion">最新版本 {{version.newversion}}</text>
		</view>
		<view class="line">
			<view class="line_item" v-for="(el, index) in item" :key="index" @click="inspect(el.type)">
				<text>{{el.name}}</text>
				<u-icon class="icon" name="arrow-right" color="#979797" size="10" bold></u-icon>
			</view>
		</view>
	</view>
</template>

<script>
	import { checkUpdate } from "@/components/yzhua006-update/js/app-update-check.js";
	export default {
		data() {
			return {
				version: '',
				item: [{
						name: '系统通知',
						type: 'notice'
					},
					{
						name: '版本更新',
						type: 'update'
					}
				]
			}
		},
		onLoad() {
			// this.getAppInfo(1)
			if(uni.getStorageSync('version')) {
				this.version = uni.getStorageSync('version')
			} else {
				this.checkVersion()
			}
		},
		methods: {
			checkVersion() {
				this.$api.sendRequest({
					url: this.$url.VERSIONUPDATE,
					success: res => {
						console.log('版本数据', res.data)
						uni.setStorageSync('version', res.data)
					}
				})
			},
			inspect(val) {
				switch (val) {
					case 'notice':
						console.log(123)
						break;
					case 'update':
						this.getAppInfo(1); //获取线上APP版本信息  参数type 0自动检查  1手动检查（手动检查时，之前取消更新的版本也会提示出来）
						break;
					default:
						return
				}
			},
			//获取线上APP版本信息
			getAppInfo(type) {
				const system_info = uni.getSystemInfoSync();
				let params = {
					os: system_info.platform //本机设备操作系统  （android || ios）
				}
				if (params.os != 'ios' && params.os != 'android') false; //如果不是安卓或ios 返回false

				//这里自行请求API获取版本信息 建议传入操作系统标识，返回本机对应的操作系统最新版本信息，也就是安卓的返回就是安卓的版本信息  ios返回就是ios的版本信息

				//请求获取最新版本
				setTimeout(() => {
					let update_info = {
						version: this.version.newversion, //线上版本
						now_url: this.version.downloadurl, //更新链接
						silent: this.version.silent, //是否是静默更新
						force: this.version.enforce, //是否是强制更新
						net_check: this.version.net_check, //非WIfi是否提示
						note: this.version.content, //更新内容
					}
					checkUpdate(update_info, type).then(res => {
						if (res.msg) {
							plus.nativeUI.toast(res.msg);
						}
					}); ///检查更新
					//checkUpdate 这个方法会做什么？：线上版本号 与 本地版本号做对比 ，如果需要更新  根据静默，强制、wifi等信息执行静默更新或跳转到升级页面
					//跳转升级页面的前提是，需要新建并在pages.json中配置升级页面，配置方法请查看插件详情
				}, 200)
			},
		}
	}
</script>

<style scoped lang="scss">
	.VersionUpdate {
		.app_logo {
			display: flex;
			flex-direction: column;
			align-items: center;
			margin-top: 108rpx;

			image {
				width: 190rpx;
				height: 198rpx;
				margin-bottom: 30rpx;
			}

			.name {
				margin-bottom: 10rpx;
				font-size: 34rpx;
				font-weight: bold;
				color: #000000;
			}

			.version {
				font-size: 30rpx;
				font-weight: bold;
				color: #585858;
			}
			.small {
				font-weight: 100;
				margin-top: 10rpx;
				font-size: 24rpx;
				color: #9f9f9f;
			}
		}

		.line {
			margin-top: 124rpx;
			display: flex;
			flex-direction: column;

			.line_item {
				display: flex;
				flex-direction: row;
				justify-content: space-between;
				padding: 0 38rpx;
				border-bottom: 2rpx solid #F3F3F3;
				padding-bottom: 30rpx;
				padding-top: 30rpx;

				text {
					font-size: 30rpx;
					font-weight: 400;
					color: #000000;
				}
			}
		}
	}
</style>
